1. Technical Field
The present invention relates in general to improved data storage systems and in particular to a method and system for enhancing the efficiency of data block processing within a data storage system. Still more particularly the present invention relates to an improved method and system for initiating processing of a header portion of each data block prior to transfer of the associated data block into a data block buffer.
2. Description of the Related Art
Modern data processing systems often use digital signal recording devices attached to host processors to record records as addressable units within magnetic tape storage systems.
Examples of systems which may be utilized to record records within a magnetic tape storage system are disclosed within Milligan et al., U.S. Pat. No. 4,393,445; Milligan et al., U.S. Pat. No. 4,435,762; Videki II, U.S. Pat. No. 4,471,457; Cole et al., U.S. Pat. No. 4,603,382; Bauer et al., U.S. Pat. No. 4,423,480; and Fry et al., U.S. Pat. No. 4,403,286. Each of the aforementioned patents discloses a magnetic tape storage system which may be advantageously employed in carrying out the method and system of the present invention.
The records stored within such a magnetic tape storage system are typically recorded as addressable units which comprise a block of signals recorded on magnetic tape in a manner set forth within the above-referenced patents. Each such data block on a tape is separated from an adjacent data block by a so-called inter-block gap (IBG) which may comprise an erased portion to the tape, a tone or other special symbol denoting the presence of an inter-block gap.
In early data storage systems, such inter-block gaps may be quite long; however, as system development has resulted in higher and higher data capacity and native data rate capability within storage subsystems, the inter-block gap has been substantially decreased in duration. As a result, the decisions and processing of data blocks which are read from tape in a data storage system must be accomplished within this increasingly smaller gap between consecutive data blocks, resulting in much greater demands on the processing hardware.
Each data block within such a data storage system typically includes both a data portion and a header portion which contains all information needed to identify and process a particular block of data. Normally, this information may be utilized to determine the "type" of data block, whether or not the current data block is a copy of a previously read data block, whether or not any sequencing errors exist between the current data block and those data blocks previously read which are associated with the current data block and whether or not additional data blocks are to be read in association with the current data block. As will be appreciated, the overhead of processing required to determine these parameters and process each data block becomes a more difficult problem to resolve.
Thus, it should be apparent that a need exists for a method and system for more efficiently processing data blocks within a data storage system despite the decreased amount of time available for such processing within an inter-block gap.